/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package nxtmodel2;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see nxtmodel2.Nxtmodel2Factory
 * @model kind="package"
 *        annotation="http://www.eclipse.org/emf/2002/Ecore invocationDelegates='http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot' settingDelegates='http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot' validationDelegates='http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot'"
 * @generated
 */
public interface Nxtmodel2Package extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "nxtmodel2";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://nxtmodel2/1.0";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "nxtmodel2";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	Nxtmodel2Package eINSTANCE = nxtmodel2.impl.Nxtmodel2PackageImpl.init();

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.NxtRobotImpl <em>Nxt Robot</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.NxtRobotImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtRobot()
	 * @generated
	 */
	int NXT_ROBOT = 0;

	/**
	 * The feature id for the '<em><b>Elements</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_ROBOT__ELEMENTS = 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_ROBOT__NAME = 1;

	/**
	 * The feature id for the '<em><b>Flow Chart</b></em>' containment reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_ROBOT__FLOW_CHART = 2;

	/**
	 * The number of structural features of the '<em>Nxt Robot</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_ROBOT_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.NxtElementImpl <em>Nxt Element</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.NxtElementImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtElement()
	 * @generated
	 */
	int NXT_ELEMENT = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_ELEMENT__NAME = 0;

	/**
	 * The number of structural features of the '<em>Nxt Element</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_ELEMENT_FEATURE_COUNT = 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.PartImpl <em>Part</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.PartImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getPart()
	 * @generated
	 */
	int PART = 2;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PART__NAME = NXT_ELEMENT__NAME;

	/**
	 * The number of structural features of the '<em>Part</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PART_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.SensorImpl <em>Sensor</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.SensorImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getSensor()
	 * @generated
	 */
	int SENSOR = 3;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR__NAME = PART__NAME;

	/**
	 * The feature id for the '<em><b>Port</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR__PORT = PART_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Reading Properties</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR__READING_PROPERTIES = PART_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Type</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR__TYPE = PART_FEATURE_COUNT + 2;

	/**
	 * The feature id for the '<em><b>Subtype</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR__SUBTYPE = PART_FEATURE_COUNT + 3;

	/**
	 * The number of structural features of the '<em>Sensor</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR_FEATURE_COUNT = PART_FEATURE_COUNT + 4;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.MotorImpl <em>Motor</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.MotorImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getMotor()
	 * @generated
	 */
	int MOTOR = 4;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MOTOR__NAME = PART__NAME;

	/**
	 * The feature id for the '<em><b>Port</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MOTOR__PORT = PART_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Motor</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MOTOR_FEATURE_COUNT = PART_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.PropertyImpl <em>Property</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.PropertyImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getProperty()
	 * @generated
	 */
	int PROPERTY = 5;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PROPERTY__NAME = NXT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Data Type</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PROPERTY__DATA_TYPE = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Property</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PROPERTY_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.GearImpl <em>Gear</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.GearImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getGear()
	 * @generated
	 */
	int GEAR = 6;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int GEAR__NAME = PART__NAME;

	/**
	 * The feature id for the '<em><b>Motor1</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int GEAR__MOTOR1 = PART_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Motor2</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int GEAR__MOTOR2 = PART_FEATURE_COUNT + 1;

	/**
	 * The number of structural features of the '<em>Gear</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int GEAR_FEATURE_COUNT = PART_FEATURE_COUNT + 2;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.PortImpl <em>Port</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.PortImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getPort()
	 * @generated
	 */
	int PORT = 7;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PORT__NAME = NXT_ELEMENT__NAME;

	/**
	 * The number of structural features of the '<em>Port</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PORT_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.SensorPortImpl <em>Sensor Port</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.SensorPortImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getSensorPort()
	 * @generated
	 */
	int SENSOR_PORT = 8;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR_PORT__NAME = NXT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Port</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR_PORT__PORT = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Sensor Port</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SENSOR_PORT_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.MotorPortImpl <em>Motor Port</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.MotorPortImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getMotorPort()
	 * @generated
	 */
	int MOTOR_PORT = 9;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MOTOR_PORT__NAME = PORT__NAME;

	/**
	 * The feature id for the '<em><b>Port</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MOTOR_PORT__PORT = PORT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Motor Port</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MOTOR_PORT_FEATURE_COUNT = PORT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.ConditionImpl <em>Condition</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.ConditionImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getCondition()
	 * @generated
	 */
	int CONDITION = 10;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONDITION__NAME = NXT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Condition Property</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONDITION__CONDITION_PROPERTY = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Type</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONDITION__TYPE = NXT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Expression</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONDITION__EXPRESSION = NXT_ELEMENT_FEATURE_COUNT + 2;

	/**
	 * The feature id for the '<em><b>Value</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONDITION__VALUE = NXT_ELEMENT_FEATURE_COUNT + 3;

	/**
	 * The number of structural features of the '<em>Condition</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CONDITION_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 4;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.RuleImpl <em>Rule</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.RuleImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getRule()
	 * @generated
	 */
	int RULE = 11;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE__NAME = NXT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Conditions</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE__CONDITIONS = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Rule</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.ModifiedMotorImpl <em>Modified Motor</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.ModifiedMotorImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getModifiedMotor()
	 * @generated
	 */
	int MODIFIED_MOTOR = 12;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MODIFIED_MOTOR__NAME = NXT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Estado</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MODIFIED_MOTOR__ESTADO = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Modified Motor</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MODIFIED_MOTOR__MODIFIED_MOTOR = NXT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The number of structural features of the '<em>Modified Motor</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MODIFIED_MOTOR_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 2;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.ActionImpl <em>Action</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.ActionImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getAction()
	 * @generated
	 */
	int ACTION = 13;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION__NAME = NXT_ELEMENT__NAME;

	/**
	 * The feature id for the '<em><b>Modified Motors</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION__MODIFIED_MOTORS = NXT_ELEMENT_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Action</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION_FEATURE_COUNT = NXT_ELEMENT_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.FlowChartNxtImpl <em>Flow Chart Nxt</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.FlowChartNxtImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getFlowChartNxt()
	 * @generated
	 */
	int FLOW_CHART_NXT = 14;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FLOW_CHART_NXT__NAME = 0;

	/**
	 * The feature id for the '<em><b>Nodes</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FLOW_CHART_NXT__NODES = 1;

	/**
	 * The feature id for the '<em><b>Transitions</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FLOW_CHART_NXT__TRANSITIONS = 2;

	/**
	 * The number of structural features of the '<em>Flow Chart Nxt</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FLOW_CHART_NXT_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.NxtNodeImpl <em>Nxt Node</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.NxtNodeImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtNode()
	 * @generated
	 */
	int NXT_NODE = 15;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_NODE__OUTGOING = 0;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_NODE__INCOMING = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_NODE__NAME = 2;

	/**
	 * The number of structural features of the '<em>Nxt Node</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_NODE_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.NxtTransitionImpl <em>Nxt Transition</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.NxtTransitionImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtTransition()
	 * @generated
	 */
	int NXT_TRANSITION = 16;

	/**
	 * The feature id for the '<em><b>Source</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_TRANSITION__SOURCE = 0;

	/**
	 * The feature id for the '<em><b>Target</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_TRANSITION__TARGET = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_TRANSITION__NAME = 2;

	/**
	 * The number of structural features of the '<em>Nxt Transition</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NXT_TRANSITION_FEATURE_COUNT = 3;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.MethodImpl <em>Method</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.MethodImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getMethod()
	 * @generated
	 */
	int METHOD = 17;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int METHOD__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int METHOD__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int METHOD__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>Method</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int METHOD_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.EndMethodImpl <em>End Method</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.EndMethodImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEndMethod()
	 * @generated
	 */
	int END_METHOD = 18;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_METHOD__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_METHOD__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_METHOD__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>End Method</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_METHOD_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.EndRuleImpl <em>End Rule</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.EndRuleImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEndRule()
	 * @generated
	 */
	int END_RULE = 19;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_RULE__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_RULE__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_RULE__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>End Rule</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_RULE_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.LoopImpl <em>Loop</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.LoopImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getLoop()
	 * @generated
	 */
	int LOOP = 20;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOOP__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOOP__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOOP__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>Loop</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int LOOP_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.EndLoopImpl <em>End Loop</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.EndLoopImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEndLoop()
	 * @generated
	 */
	int END_LOOP = 21;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_LOOP__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_LOOP__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_LOOP__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>End Loop</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_LOOP_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.StartImpl <em>Start</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.StartImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getStart()
	 * @generated
	 */
	int START = 22;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int START__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int START__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int START__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>Start</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int START_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.EndImpl <em>End</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.EndImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEnd()
	 * @generated
	 */
	int END = 23;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END__NAME = NXT_NODE__NAME;

	/**
	 * The number of structural features of the '<em>End</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int END_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.RuleAnnotationImpl <em>Rule Annotation</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.RuleAnnotationImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getRuleAnnotation()
	 * @generated
	 */
	int RULE_ANNOTATION = 24;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE_ANNOTATION__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE_ANNOTATION__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE_ANNOTATION__NAME = NXT_NODE__NAME;

	/**
	 * The feature id for the '<em><b>Rule Parent</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE_ANNOTATION__RULE_PARENT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Rule Annotation</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int RULE_ANNOTATION_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link nxtmodel2.impl.ActionAnnotationImpl <em>Action Annotation</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see nxtmodel2.impl.ActionAnnotationImpl
	 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getActionAnnotation()
	 * @generated
	 */
	int ACTION_ANNOTATION = 25;

	/**
	 * The feature id for the '<em><b>Outgoing</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION_ANNOTATION__OUTGOING = NXT_NODE__OUTGOING;

	/**
	 * The feature id for the '<em><b>Incoming</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION_ANNOTATION__INCOMING = NXT_NODE__INCOMING;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION_ANNOTATION__NAME = NXT_NODE__NAME;

	/**
	 * The feature id for the '<em><b>Action Parent</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION_ANNOTATION__ACTION_PARENT = NXT_NODE_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Action Annotation</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ACTION_ANNOTATION_FEATURE_COUNT = NXT_NODE_FEATURE_COUNT + 1;


	/**
	 * Returns the meta object for class '{@link nxtmodel2.NxtRobot <em>Nxt Robot</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Nxt Robot</em>'.
	 * @see nxtmodel2.NxtRobot
	 * @generated
	 */
	EClass getNxtRobot();

	/**
	 * Returns the meta object for the containment reference list '{@link nxtmodel2.NxtRobot#getElements <em>Elements</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Elements</em>'.
	 * @see nxtmodel2.NxtRobot#getElements()
	 * @see #getNxtRobot()
	 * @generated
	 */
	EReference getNxtRobot_Elements();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.NxtRobot#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see nxtmodel2.NxtRobot#getName()
	 * @see #getNxtRobot()
	 * @generated
	 */
	EAttribute getNxtRobot_Name();

	/**
	 * Returns the meta object for the containment reference '{@link nxtmodel2.NxtRobot#getFlowChart <em>Flow Chart</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference '<em>Flow Chart</em>'.
	 * @see nxtmodel2.NxtRobot#getFlowChart()
	 * @see #getNxtRobot()
	 * @generated
	 */
	EReference getNxtRobot_FlowChart();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.NxtElement <em>Nxt Element</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Nxt Element</em>'.
	 * @see nxtmodel2.NxtElement
	 * @generated
	 */
	EClass getNxtElement();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.NxtElement#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see nxtmodel2.NxtElement#getName()
	 * @see #getNxtElement()
	 * @generated
	 */
	EAttribute getNxtElement_Name();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Part <em>Part</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Part</em>'.
	 * @see nxtmodel2.Part
	 * @generated
	 */
	EClass getPart();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Sensor <em>Sensor</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Sensor</em>'.
	 * @see nxtmodel2.Sensor
	 * @generated
	 */
	EClass getSensor();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.Sensor#getPort <em>Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Port</em>'.
	 * @see nxtmodel2.Sensor#getPort()
	 * @see #getSensor()
	 * @generated
	 */
	EReference getSensor_Port();

	/**
	 * Returns the meta object for the reference list '{@link nxtmodel2.Sensor#getReadingProperties <em>Reading Properties</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Reading Properties</em>'.
	 * @see nxtmodel2.Sensor#getReadingProperties()
	 * @see #getSensor()
	 * @generated
	 */
	EReference getSensor_ReadingProperties();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.Sensor#getType <em>Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Type</em>'.
	 * @see nxtmodel2.Sensor#getType()
	 * @see #getSensor()
	 * @generated
	 */
	EAttribute getSensor_Type();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.Sensor#getSubtype <em>Subtype</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Subtype</em>'.
	 * @see nxtmodel2.Sensor#getSubtype()
	 * @see #getSensor()
	 * @generated
	 */
	EAttribute getSensor_Subtype();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Motor <em>Motor</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Motor</em>'.
	 * @see nxtmodel2.Motor
	 * @generated
	 */
	EClass getMotor();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.Motor#getPort <em>Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Port</em>'.
	 * @see nxtmodel2.Motor#getPort()
	 * @see #getMotor()
	 * @generated
	 */
	EReference getMotor_Port();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Property <em>Property</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Property</em>'.
	 * @see nxtmodel2.Property
	 * @generated
	 */
	EClass getProperty();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.Property#getDataType <em>Data Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Data Type</em>'.
	 * @see nxtmodel2.Property#getDataType()
	 * @see #getProperty()
	 * @generated
	 */
	EAttribute getProperty_DataType();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Gear <em>Gear</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Gear</em>'.
	 * @see nxtmodel2.Gear
	 * @generated
	 */
	EClass getGear();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.Gear#getMotor1 <em>Motor1</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Motor1</em>'.
	 * @see nxtmodel2.Gear#getMotor1()
	 * @see #getGear()
	 * @generated
	 */
	EReference getGear_Motor1();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.Gear#getMotor2 <em>Motor2</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Motor2</em>'.
	 * @see nxtmodel2.Gear#getMotor2()
	 * @see #getGear()
	 * @generated
	 */
	EReference getGear_Motor2();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Port <em>Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Port</em>'.
	 * @see nxtmodel2.Port
	 * @generated
	 */
	EClass getPort();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.SensorPort <em>Sensor Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Sensor Port</em>'.
	 * @see nxtmodel2.SensorPort
	 * @generated
	 */
	EClass getSensorPort();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.SensorPort#getPort <em>Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Port</em>'.
	 * @see nxtmodel2.SensorPort#getPort()
	 * @see #getSensorPort()
	 * @generated
	 */
	EAttribute getSensorPort_Port();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.MotorPort <em>Motor Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Motor Port</em>'.
	 * @see nxtmodel2.MotorPort
	 * @generated
	 */
	EClass getMotorPort();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.MotorPort#getPort <em>Port</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Port</em>'.
	 * @see nxtmodel2.MotorPort#getPort()
	 * @see #getMotorPort()
	 * @generated
	 */
	EAttribute getMotorPort_Port();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Condition <em>Condition</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Condition</em>'.
	 * @see nxtmodel2.Condition
	 * @generated
	 */
	EClass getCondition();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.Condition#getConditionProperty <em>Condition Property</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Condition Property</em>'.
	 * @see nxtmodel2.Condition#getConditionProperty()
	 * @see #getCondition()
	 * @generated
	 */
	EReference getCondition_ConditionProperty();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.Condition#getType <em>Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Type</em>'.
	 * @see nxtmodel2.Condition#getType()
	 * @see #getCondition()
	 * @generated
	 */
	EAttribute getCondition_Type();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.Condition#getExpression <em>Expression</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Expression</em>'.
	 * @see nxtmodel2.Condition#getExpression()
	 * @see #getCondition()
	 * @generated
	 */
	EAttribute getCondition_Expression();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.Condition#getValue <em>Value</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Value</em>'.
	 * @see nxtmodel2.Condition#getValue()
	 * @see #getCondition()
	 * @generated
	 */
	EAttribute getCondition_Value();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Rule <em>Rule</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Rule</em>'.
	 * @see nxtmodel2.Rule
	 * @generated
	 */
	EClass getRule();

	/**
	 * Returns the meta object for the reference list '{@link nxtmodel2.Rule#getConditions <em>Conditions</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Conditions</em>'.
	 * @see nxtmodel2.Rule#getConditions()
	 * @see #getRule()
	 * @generated
	 */
	EReference getRule_Conditions();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.ModifiedMotor <em>Modified Motor</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Modified Motor</em>'.
	 * @see nxtmodel2.ModifiedMotor
	 * @generated
	 */
	EClass getModifiedMotor();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.ModifiedMotor#getEstado <em>Estado</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Estado</em>'.
	 * @see nxtmodel2.ModifiedMotor#getEstado()
	 * @see #getModifiedMotor()
	 * @generated
	 */
	EAttribute getModifiedMotor_Estado();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.ModifiedMotor#getModifiedMotor <em>Modified Motor</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Modified Motor</em>'.
	 * @see nxtmodel2.ModifiedMotor#getModifiedMotor()
	 * @see #getModifiedMotor()
	 * @generated
	 */
	EReference getModifiedMotor_ModifiedMotor();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Action <em>Action</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Action</em>'.
	 * @see nxtmodel2.Action
	 * @generated
	 */
	EClass getAction();

	/**
	 * Returns the meta object for the reference list '{@link nxtmodel2.Action#getModifiedMotors <em>Modified Motors</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Modified Motors</em>'.
	 * @see nxtmodel2.Action#getModifiedMotors()
	 * @see #getAction()
	 * @generated
	 */
	EReference getAction_ModifiedMotors();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.FlowChartNxt <em>Flow Chart Nxt</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Flow Chart Nxt</em>'.
	 * @see nxtmodel2.FlowChartNxt
	 * @generated
	 */
	EClass getFlowChartNxt();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.FlowChartNxt#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see nxtmodel2.FlowChartNxt#getName()
	 * @see #getFlowChartNxt()
	 * @generated
	 */
	EAttribute getFlowChartNxt_Name();

	/**
	 * Returns the meta object for the containment reference list '{@link nxtmodel2.FlowChartNxt#getNodes <em>Nodes</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Nodes</em>'.
	 * @see nxtmodel2.FlowChartNxt#getNodes()
	 * @see #getFlowChartNxt()
	 * @generated
	 */
	EReference getFlowChartNxt_Nodes();

	/**
	 * Returns the meta object for the containment reference list '{@link nxtmodel2.FlowChartNxt#getTransitions <em>Transitions</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Transitions</em>'.
	 * @see nxtmodel2.FlowChartNxt#getTransitions()
	 * @see #getFlowChartNxt()
	 * @generated
	 */
	EReference getFlowChartNxt_Transitions();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.NxtNode <em>Nxt Node</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Nxt Node</em>'.
	 * @see nxtmodel2.NxtNode
	 * @generated
	 */
	EClass getNxtNode();

	/**
	 * Returns the meta object for the reference list '{@link nxtmodel2.NxtNode#getOutgoing <em>Outgoing</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Outgoing</em>'.
	 * @see nxtmodel2.NxtNode#getOutgoing()
	 * @see #getNxtNode()
	 * @generated
	 */
	EReference getNxtNode_Outgoing();

	/**
	 * Returns the meta object for the reference list '{@link nxtmodel2.NxtNode#getIncoming <em>Incoming</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Incoming</em>'.
	 * @see nxtmodel2.NxtNode#getIncoming()
	 * @see #getNxtNode()
	 * @generated
	 */
	EReference getNxtNode_Incoming();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.NxtNode#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see nxtmodel2.NxtNode#getName()
	 * @see #getNxtNode()
	 * @generated
	 */
	EAttribute getNxtNode_Name();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.NxtTransition <em>Nxt Transition</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Nxt Transition</em>'.
	 * @see nxtmodel2.NxtTransition
	 * @generated
	 */
	EClass getNxtTransition();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.NxtTransition#getSource <em>Source</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Source</em>'.
	 * @see nxtmodel2.NxtTransition#getSource()
	 * @see #getNxtTransition()
	 * @generated
	 */
	EReference getNxtTransition_Source();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.NxtTransition#getTarget <em>Target</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Target</em>'.
	 * @see nxtmodel2.NxtTransition#getTarget()
	 * @see #getNxtTransition()
	 * @generated
	 */
	EReference getNxtTransition_Target();

	/**
	 * Returns the meta object for the attribute '{@link nxtmodel2.NxtTransition#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see nxtmodel2.NxtTransition#getName()
	 * @see #getNxtTransition()
	 * @generated
	 */
	EAttribute getNxtTransition_Name();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Method <em>Method</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Method</em>'.
	 * @see nxtmodel2.Method
	 * @generated
	 */
	EClass getMethod();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.EndMethod <em>End Method</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>End Method</em>'.
	 * @see nxtmodel2.EndMethod
	 * @generated
	 */
	EClass getEndMethod();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.EndRule <em>End Rule</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>End Rule</em>'.
	 * @see nxtmodel2.EndRule
	 * @generated
	 */
	EClass getEndRule();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Loop <em>Loop</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Loop</em>'.
	 * @see nxtmodel2.Loop
	 * @generated
	 */
	EClass getLoop();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.EndLoop <em>End Loop</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>End Loop</em>'.
	 * @see nxtmodel2.EndLoop
	 * @generated
	 */
	EClass getEndLoop();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.Start <em>Start</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Start</em>'.
	 * @see nxtmodel2.Start
	 * @generated
	 */
	EClass getStart();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.End <em>End</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>End</em>'.
	 * @see nxtmodel2.End
	 * @generated
	 */
	EClass getEnd();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.RuleAnnotation <em>Rule Annotation</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Rule Annotation</em>'.
	 * @see nxtmodel2.RuleAnnotation
	 * @generated
	 */
	EClass getRuleAnnotation();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.RuleAnnotation#getRuleParent <em>Rule Parent</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Rule Parent</em>'.
	 * @see nxtmodel2.RuleAnnotation#getRuleParent()
	 * @see #getRuleAnnotation()
	 * @generated
	 */
	EReference getRuleAnnotation_RuleParent();

	/**
	 * Returns the meta object for class '{@link nxtmodel2.ActionAnnotation <em>Action Annotation</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Action Annotation</em>'.
	 * @see nxtmodel2.ActionAnnotation
	 * @generated
	 */
	EClass getActionAnnotation();

	/**
	 * Returns the meta object for the reference '{@link nxtmodel2.ActionAnnotation#getActionParent <em>Action Parent</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Action Parent</em>'.
	 * @see nxtmodel2.ActionAnnotation#getActionParent()
	 * @see #getActionAnnotation()
	 * @generated
	 */
	EReference getActionAnnotation_ActionParent();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	Nxtmodel2Factory getNxtmodel2Factory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.NxtRobotImpl <em>Nxt Robot</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.NxtRobotImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtRobot()
		 * @generated
		 */
		EClass NXT_ROBOT = eINSTANCE.getNxtRobot();

		/**
		 * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference NXT_ROBOT__ELEMENTS = eINSTANCE.getNxtRobot_Elements();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute NXT_ROBOT__NAME = eINSTANCE.getNxtRobot_Name();

		/**
		 * The meta object literal for the '<em><b>Flow Chart</b></em>' containment reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference NXT_ROBOT__FLOW_CHART = eINSTANCE.getNxtRobot_FlowChart();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.NxtElementImpl <em>Nxt Element</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.NxtElementImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtElement()
		 * @generated
		 */
		EClass NXT_ELEMENT = eINSTANCE.getNxtElement();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute NXT_ELEMENT__NAME = eINSTANCE.getNxtElement_Name();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.PartImpl <em>Part</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.PartImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getPart()
		 * @generated
		 */
		EClass PART = eINSTANCE.getPart();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.SensorImpl <em>Sensor</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.SensorImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getSensor()
		 * @generated
		 */
		EClass SENSOR = eINSTANCE.getSensor();

		/**
		 * The meta object literal for the '<em><b>Port</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference SENSOR__PORT = eINSTANCE.getSensor_Port();

		/**
		 * The meta object literal for the '<em><b>Reading Properties</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference SENSOR__READING_PROPERTIES = eINSTANCE.getSensor_ReadingProperties();

		/**
		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute SENSOR__TYPE = eINSTANCE.getSensor_Type();

		/**
		 * The meta object literal for the '<em><b>Subtype</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute SENSOR__SUBTYPE = eINSTANCE.getSensor_Subtype();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.MotorImpl <em>Motor</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.MotorImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getMotor()
		 * @generated
		 */
		EClass MOTOR = eINSTANCE.getMotor();

		/**
		 * The meta object literal for the '<em><b>Port</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference MOTOR__PORT = eINSTANCE.getMotor_Port();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.PropertyImpl <em>Property</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.PropertyImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getProperty()
		 * @generated
		 */
		EClass PROPERTY = eINSTANCE.getProperty();

		/**
		 * The meta object literal for the '<em><b>Data Type</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute PROPERTY__DATA_TYPE = eINSTANCE.getProperty_DataType();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.GearImpl <em>Gear</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.GearImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getGear()
		 * @generated
		 */
		EClass GEAR = eINSTANCE.getGear();

		/**
		 * The meta object literal for the '<em><b>Motor1</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference GEAR__MOTOR1 = eINSTANCE.getGear_Motor1();

		/**
		 * The meta object literal for the '<em><b>Motor2</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference GEAR__MOTOR2 = eINSTANCE.getGear_Motor2();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.PortImpl <em>Port</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.PortImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getPort()
		 * @generated
		 */
		EClass PORT = eINSTANCE.getPort();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.SensorPortImpl <em>Sensor Port</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.SensorPortImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getSensorPort()
		 * @generated
		 */
		EClass SENSOR_PORT = eINSTANCE.getSensorPort();

		/**
		 * The meta object literal for the '<em><b>Port</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute SENSOR_PORT__PORT = eINSTANCE.getSensorPort_Port();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.MotorPortImpl <em>Motor Port</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.MotorPortImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getMotorPort()
		 * @generated
		 */
		EClass MOTOR_PORT = eINSTANCE.getMotorPort();

		/**
		 * The meta object literal for the '<em><b>Port</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MOTOR_PORT__PORT = eINSTANCE.getMotorPort_Port();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.ConditionImpl <em>Condition</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.ConditionImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getCondition()
		 * @generated
		 */
		EClass CONDITION = eINSTANCE.getCondition();

		/**
		 * The meta object literal for the '<em><b>Condition Property</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference CONDITION__CONDITION_PROPERTY = eINSTANCE.getCondition_ConditionProperty();

		/**
		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute CONDITION__TYPE = eINSTANCE.getCondition_Type();

		/**
		 * The meta object literal for the '<em><b>Expression</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute CONDITION__EXPRESSION = eINSTANCE.getCondition_Expression();

		/**
		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute CONDITION__VALUE = eINSTANCE.getCondition_Value();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.RuleImpl <em>Rule</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.RuleImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getRule()
		 * @generated
		 */
		EClass RULE = eINSTANCE.getRule();

		/**
		 * The meta object literal for the '<em><b>Conditions</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference RULE__CONDITIONS = eINSTANCE.getRule_Conditions();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.ModifiedMotorImpl <em>Modified Motor</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.ModifiedMotorImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getModifiedMotor()
		 * @generated
		 */
		EClass MODIFIED_MOTOR = eINSTANCE.getModifiedMotor();

		/**
		 * The meta object literal for the '<em><b>Estado</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MODIFIED_MOTOR__ESTADO = eINSTANCE.getModifiedMotor_Estado();

		/**
		 * The meta object literal for the '<em><b>Modified Motor</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference MODIFIED_MOTOR__MODIFIED_MOTOR = eINSTANCE.getModifiedMotor_ModifiedMotor();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.ActionImpl <em>Action</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.ActionImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getAction()
		 * @generated
		 */
		EClass ACTION = eINSTANCE.getAction();

		/**
		 * The meta object literal for the '<em><b>Modified Motors</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ACTION__MODIFIED_MOTORS = eINSTANCE.getAction_ModifiedMotors();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.FlowChartNxtImpl <em>Flow Chart Nxt</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.FlowChartNxtImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getFlowChartNxt()
		 * @generated
		 */
		EClass FLOW_CHART_NXT = eINSTANCE.getFlowChartNxt();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute FLOW_CHART_NXT__NAME = eINSTANCE.getFlowChartNxt_Name();

		/**
		 * The meta object literal for the '<em><b>Nodes</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FLOW_CHART_NXT__NODES = eINSTANCE.getFlowChartNxt_Nodes();

		/**
		 * The meta object literal for the '<em><b>Transitions</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference FLOW_CHART_NXT__TRANSITIONS = eINSTANCE.getFlowChartNxt_Transitions();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.NxtNodeImpl <em>Nxt Node</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.NxtNodeImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtNode()
		 * @generated
		 */
		EClass NXT_NODE = eINSTANCE.getNxtNode();

		/**
		 * The meta object literal for the '<em><b>Outgoing</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference NXT_NODE__OUTGOING = eINSTANCE.getNxtNode_Outgoing();

		/**
		 * The meta object literal for the '<em><b>Incoming</b></em>' reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference NXT_NODE__INCOMING = eINSTANCE.getNxtNode_Incoming();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute NXT_NODE__NAME = eINSTANCE.getNxtNode_Name();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.NxtTransitionImpl <em>Nxt Transition</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.NxtTransitionImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getNxtTransition()
		 * @generated
		 */
		EClass NXT_TRANSITION = eINSTANCE.getNxtTransition();

		/**
		 * The meta object literal for the '<em><b>Source</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference NXT_TRANSITION__SOURCE = eINSTANCE.getNxtTransition_Source();

		/**
		 * The meta object literal for the '<em><b>Target</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference NXT_TRANSITION__TARGET = eINSTANCE.getNxtTransition_Target();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute NXT_TRANSITION__NAME = eINSTANCE.getNxtTransition_Name();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.MethodImpl <em>Method</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.MethodImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getMethod()
		 * @generated
		 */
		EClass METHOD = eINSTANCE.getMethod();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.EndMethodImpl <em>End Method</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.EndMethodImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEndMethod()
		 * @generated
		 */
		EClass END_METHOD = eINSTANCE.getEndMethod();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.EndRuleImpl <em>End Rule</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.EndRuleImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEndRule()
		 * @generated
		 */
		EClass END_RULE = eINSTANCE.getEndRule();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.LoopImpl <em>Loop</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.LoopImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getLoop()
		 * @generated
		 */
		EClass LOOP = eINSTANCE.getLoop();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.EndLoopImpl <em>End Loop</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.EndLoopImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEndLoop()
		 * @generated
		 */
		EClass END_LOOP = eINSTANCE.getEndLoop();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.StartImpl <em>Start</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.StartImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getStart()
		 * @generated
		 */
		EClass START = eINSTANCE.getStart();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.EndImpl <em>End</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.EndImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getEnd()
		 * @generated
		 */
		EClass END = eINSTANCE.getEnd();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.RuleAnnotationImpl <em>Rule Annotation</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.RuleAnnotationImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getRuleAnnotation()
		 * @generated
		 */
		EClass RULE_ANNOTATION = eINSTANCE.getRuleAnnotation();

		/**
		 * The meta object literal for the '<em><b>Rule Parent</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference RULE_ANNOTATION__RULE_PARENT = eINSTANCE.getRuleAnnotation_RuleParent();

		/**
		 * The meta object literal for the '{@link nxtmodel2.impl.ActionAnnotationImpl <em>Action Annotation</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see nxtmodel2.impl.ActionAnnotationImpl
		 * @see nxtmodel2.impl.Nxtmodel2PackageImpl#getActionAnnotation()
		 * @generated
		 */
		EClass ACTION_ANNOTATION = eINSTANCE.getActionAnnotation();

		/**
		 * The meta object literal for the '<em><b>Action Parent</b></em>' reference feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ACTION_ANNOTATION__ACTION_PARENT = eINSTANCE.getActionAnnotation_ActionParent();

	}

} //Nxtmodel2Package
